﻿using System;
using System.Collections.Generic;
using System.Text;
using Mono.Linker.Tests.Cases.Expectations.Assertions;
using Mono.Linker.Tests.Cases.Expectations.Metadata;

namespace Mono.Linker.Tests.Cases.Inheritance.Interfaces.StaticInterfaceMethods
{
	[SetupLinkerArgument ("--skip-unresolved", "true")]
	[TestCaseRequirements (TestRunCharacteristics.SupportsStaticInterfaceMethods, "Requires a framework that supports static interface methods")]
	[Define ("IL_ASSEMBLY_AVAILABLE")]
	[SetupCompileBefore ("library.dll", new[] { "Dependencies/TypeHierarchyFull.il" })]

	[KeptMemberInAssembly ("library.dll", "BaseScenario1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario2", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario3", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario4", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario5", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario6`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario7", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario8", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario9`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario10`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario11`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario12", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario13`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario14`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario15`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario16`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario17`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario18`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario19`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario20`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario21`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario22`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario23`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario24`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario25`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario26`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario27`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario28`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario29`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario30`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario31", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario32", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario33", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario34", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario35", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario36`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario37", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario38", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario39`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario40`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario41`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario42", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario43`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario44`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario45`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario46`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario47`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario48`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario49`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario50`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario51`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario52`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario53`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario54`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario55`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario56`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario57`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario58`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario59`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario60`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario61", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario62", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario63", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario64", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario65", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario66`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario67", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario68", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario69`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario70`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario71`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario72", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario73`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario74`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario75`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario76`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario77`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario78`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario79`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario80`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario81`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario82`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario83`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario84`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario85`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario86`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario87`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario88`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario89`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario90`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario91`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario92`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario93", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario94`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario95`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario96`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario97`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario98`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario99`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario100`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario101`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario102`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario103`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario104`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario105`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario106`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario107`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario108`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario109`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario110`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario111`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario112`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario113`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario114", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario115`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario116`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario117`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario118`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario119`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario120`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario121`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario122`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario123`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario124`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario125`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario126`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario127`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario128`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario129`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario130`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario131`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario132`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario133", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario134", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario135", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario136", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario137", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario138`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario139", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario140", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario141`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario142`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario143`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario144", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario145`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario146`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario147`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario148`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario149`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario150`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario151`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario152`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario153`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario154`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario155`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario156`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario157`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario158`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario159`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario160`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario161`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario162`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario163`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario164`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario165", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario166`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario167`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario168`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario169`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario170`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario171`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario172`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario173`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario174`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario175`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario176`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario177`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario178`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario179`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario180`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario181`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario182`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario183`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario184`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario185`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario186", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario187`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario188`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario189`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario190`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario191`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario192`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario193`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario194`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario195`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario196`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario197`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario198`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario199`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario200`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario201`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario202`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario203`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario204`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario205", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario206", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario207", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario208", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario209", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario210`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario211", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario212", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario213`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario214`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario215`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario216", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario217`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario218`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario219`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario220`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario221`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario222`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario223`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario224`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario225`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario226`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario227`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario228`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario229`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario230`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario231`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario232`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario233`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario234`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario235`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario236`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario237", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario238`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario239`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario240`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario241`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario242`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario243`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario244`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario245`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario246`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario247`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario248`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario249`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario250`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario251`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario252`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario253`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario254`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario255`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario256`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario257`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario258", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario259`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario260`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario261`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario262`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario263`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario264`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario265`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario266`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario267`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario268`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario269`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario270`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario271`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario272`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario273`1", "MethodImplOnDerived()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario274`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "BaseScenario275`1", "Method()")]
	[KeptMemberInAssembly ("library.dll", "DerivedScenario276`1", "MethodImplOnDerived()")]

	class TypeHierarchyFull
	{
		static void Main ()
		{
#if IL_ASSEMBLY_AVAILABLE
			TestEntrypoint.Test();
#endif
		}
	}
}
